Version 2.5 User's Guide |
|
Monitoring Stategies | Previous | Next Contents |
The most popular Internet server these days is the Web server, so most of your attention will probably revolve around planning the most effective monitoring strategy for this server. However, there are other important considerations for you to keep in mind as you plan a server monitoring strategy.
Web Servers
PageSentry is capable of testing all the critical aspects of a Web server, including network connectivity, existence of HTML documents, text strings within a particular HTML document, CGI scripts, image files, clickable image map functionality, and even back-end database functionality. Here are some tips you can use to monitor the various components of your web server:
- Use a URL with a CGI reference to monitor a CGI. To obtain the proper syntax, use a Web browser such as Netscape Navigator and open a sample URL to the CGI script. After the URL has been submitted, cut and paste the URL from the Location field (in Navigator) into PageSentry. For example, the following is the URL Yahoo uses to search its Web site for the term "maxum" using its search engine CGI:
http://search.yahoo.com/bin/search?p=maxum
- If you have a back-end database, perform a similar search and import the URL into PageSentry. Be sure to ask PageSentry to request data in a URL that is static in the database, not dynamic. This will minimize the likelihood that the 404/Document Not Found error message will be returned and a Notification of a failed Sentry will be sent.
- Look for a phrase more specific than "<HTML>" in a Web document. You might consider adding an HTML comment with a unique phrase, as in "<!--The PageSentry Watch Phrase is 'Why that's Homer Simpson, sir.'-->."
- Test your security realms by creating a Sentry to access a password-protected Web page. Be sure to leave the username and password fields blank when doing this, and set your verify phrase to a string that appears in the HTTP "Not Authorized" header, like "401" (the HTTP code for "Not Authorized").
- In some cases, the server being tested may not serve HTML files at all, for example, if you are running a dedicated image server. This can make selecting a Verify Phrase difficult. Remember that PageSentry scans the entire HTTP response for the Verify Phrase, including the HTTP header. The header includes the MIME Type for the file, so a Verify Phrase of "GIF" or "JPEG" will generally suffice as a way of testing images.
FTP Servers
When testing an FTP server, a file is downloaded. However, if this file is moved, deleted, or renamed, the Sentry testing the server can fail in error.It is a good idea to place the file you want to use for testing in a directory that has permissions only for the username you specify for the FTP Sentry. This ensures that no one can delete this file inadvertently.
AppleShare Servers
Like the FTP server, the AppleShare server is dependent on a directory that allows read and write access. It might suit your purposes to create a directory just for the purpose of the AppleShare Sentry.Testing Your Network
You can use PageSentry to test the integrity of your network by monitoring multiple servers on specific segments of your network. This strategy is very logical because for PageSentry to monitor a server, it must use a reliable network connection to do so. Here are a few network monitoring strategies that you can use on any network:Within your LAN, test both upstream and downstream routers for connectivity, where upstream routers lie between your Mac and the source of your larger WAN or Internet connection, and downstream routers lie between smaller local subnets. Telnet Sentries can be used to test routers or smart hubs, and Ping Sentries can test any Internet capable device, making them perfect for testing network connectivity.
Hit your Internet Service Provider (ISP) to monitor Internet connectivity. If you're on a large, multi-tiered network and you do not know exactly who your service provider is, use a trace route utility such as WhatRoute by Bryan Christianson and search for a server across the Internet. It will help discover important information about your Internet connection, including exactly how many "hops' a packet must take to get from one computer to your PageSentry Mac.
To add another layer of monitoring to your list of PageSentry responsibilities, post a Sentry to monitor your Internet Service Provider's ISP.
You might also arrange a reciprocal-Sentry agreement with someone you know who uses PageSentry on another segment of your network or across the Internet. This is especially helpful because it ensures upstream connectivity from the perspective of someone from outside your network trying to access Internet servers on your network. Obviously, this is only helpful if there is a mutual agreement and a commitment to using well-planned Notifiers.
In general, when testing network connectivity, Ping Sentries are the best choice. Pings offer extremely low overhead, work with virtually any Internet-capable device, and can test a server or device no matter how busy it is or what applications it is running. To test the server itself, use a higher-level protocol, but for testing to see if the network connection between a particular server, gateway, or device is functioning, use Ping Sentries.
Reliable Notification
Having PageSentry notify you of trouble by e-mail may be very convenient, but relies on networks and mail servers to be functioning correctly. If your Web server application isn't mission critical, this is probably acceptable, but you may need to consider other alternatives.Using "PageNow!" or other alphanumeric paging software to send a page is, in many cases, more reliable. Also, watch the Maxum Web site ("http://www.maxum.com/") for new AppleScripts that will extend PageSentry in new ways.
The most reliable notification may be no notification at all. Using a PowerKey Notifier, you could have PageSentry shut down your server and reboot it when it detects a failure.
How Often to Check
When using PageSentry during time-critical periods, remember to hit small files and simple pages. Hitting CGIs, databases, and clickable image maps requires more CPU cycles than do simple HTML pages. When performing more complicated tests, you may want to set Sentry frequencies to test less often. Simple tests, like Ping, DNS, and SMTP are quick and have minimal effect on the performance of the server, so they can be run more frequently.Also, keep in mind your actual reliability requirements. When a Sentry is set to perform tests every 10 minutes, the average amount of time it takes for PageSentry to send a warning after a failure will be 5 minutes. While no one likes downtime, a 5 minute average response time is entirely acceptable in many (if not most) environments. On the other hand, for high-performance, high-throughput servers, 5 minutes may mean the loss of hundreds or thousands of server hits. If your server has very extreme reliability requirements, testing every minute (with average down time of 30 seconds before notification) is crucial.
The test frequency may also be determined by the type of server being tested. Mail servers, for example, will hold and retry e-mail that can't immediately be sent. If a mail server fails, it is unlikely that the downtime will cause a permanent loss of data or connections. In this case, a longer test frequency may be acceptable. At the other extreme, if your Domain Name Server fails, local users will not be able to surf the Web, get e-mail, or access any named servers of any type. For Domain Name Servers, tests should, in general, be more frequent.
Finally, ask for permission if you plan to heavily monitor someone else's servers, such as those belonging to your ISP.
Copyright © 1995-98 Maxum Development Corporation 820 South Bartlett Road - Suite 104 Streamwood, IL 60107 http://www.maxum.com/ Rev. 2/18/98 |
Previous | Next Contents |